import java.math.*
import java.util.*
import net.servicestack.client.*
open class ProcessDocumentRequestMessage
{
var InstanceId:UUID? = null
var DocumentRequest:DocumentRequestMessage? = null
}
open class DocumentRequestMessage
{
var Header:Header? = null
var RootDocumentID:String? = null
var IncludePhysicalFile:Boolean? = null
}
open class Header
{
var MessageID:String? = null
var Timestamp:Date? = null
var Sender:Party? = null
var Recipient:Party? = null
var RequestMessageID:Object? = null
}
open class Party
{
var Title:String? = null
var Code:String? = null
var Version:String? = null
var Environment:Environment? = null
}
open class Environment
{
var Title:String? = null
var Code:String? = null
}
open class DocumentMessage
{
var Header:Header? = null
var EventType:eventType? = null
var Document:Document? = null
}
enum class eventType
{
Update,
Create,
Delete,
Response,
}
open class Document : ICustomProperties
{
var ID:UUID? = null
var RootDocumentID:UUID? = null
var RegistrationprofileID:UUID? = null
var Title:String? = null
var FullTitle:String? = null
var Number:String? = null
var Version:String? = null
var ExternalNumber:String? = null
var ExternalVersion:String? = null
var InternalNumber:String? = null
var InternalInvoiceNumber:String? = null
var PersonID:Int? = null
var RelationID:Int? = null
var RelationTitle:String? = null
var ProjectID:Int? = null
var ProjectTitle:String? = null
var Extension:String? = null
var Date:Date? = null
var CommentsCount:Int? = null
var HasComments:Boolean? = null
var HasPreview:Boolean? = null
var ExtraField:String? = null
var IsFavorite:Boolean? = null
var DocumentcategoryText:String? = null
var FileSize:Long? = null
var FileDate:Date? = null
var Hash:String? = null
var HashType:String? = null
var FileUrl:String? = null
var StandardDocumentUrl:String? = null
var IsCorporateIdentity:Boolean? = null
var UserTitle:String? = null
var IsFrozen:Boolean? = null
var InternalCompanyID:Int? = null
var DirectUrl:String? = null
var AllowDigitalSigningOnlyOnPrimaryVersions:Boolean? = null
var IsPrimaryVersion:Boolean? = null
var FileExtension:String? = null
var CustomProperties:HashMap<String,Object> = HashMap<String,Object>()
}
Kotlin ProcessDocumentRequestMessage DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/reply/ProcessDocumentRequestMessage HTTP/1.1
Host: kpm_digiofficeapigateway.tbi.nl
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
DocumentRequest:
{
Header:
{
MessageID: String,
Timestamp: 0001-01-01,
Sender:
{
Title: String,
Code: String,
Version: String,
Environment:
{
Title: String,
Code: String
}
},
Recipient:
{
Title: String,
Code: String,
Version: String,
Environment:
{
Title: String,
Code: String
}
},
RequestMessageID: {}
},
RootDocumentID: String,
IncludePhysicalFile: False
}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Header:
{
MessageID: String,
Timestamp: 0001-01-01,
Sender:
{
Title: String,
Code: String,
Version: String,
Environment:
{
Title: String,
Code: String
}
},
Recipient:
{
Title: String,
Code: String,
Version: String,
Environment:
{
Title: String,
Code: String
}
},
RequestMessageID: {}
},
EventType: Update,
Document:
{
GlobalID: String,
RootDocumentID: String,
Code: String,
Subject: String,
VersionNumber: String,
NewestVersion: False,
RelationReference:
{
GlobalID: String,
Title: String
},
DocumentTypeReference:
{
GlobalID: String,
Title: String
},
ProjectReference:
{
GlobalID: String,
Title: String
},
ConstructionBlockReference:
{
GlobalID: String,
Title: String
},
ConstructionNumberReference:
{
GlobalID: String,
Title: String
},
HousingTypeReference:
{
GlobalID: String,
Title: String
},
Floor: 0,
FloorSpecified: False,
DeletedDate: 0001-01-01,
DeletedDateSpecified: False,
File:
{
Type: String,
Name: String,
Size: 0,
Content: String,
ModifiedDate: 0001-01-01
},
CustomFields:
[
{
Name: String,
Value: String
}
],
CreationDate: 0001-01-01,
CreatedBy: String,
ModifiedDate: 0001-01-01,
ModifiedBy: String
}
}